package com.abysscore.yachtdesign;

public class TFreeSubdivisionEdge extends TFreeSubdivisionBase{
	protected TFreeSubdivisionPoint FStartpoint;
	protected TFreeSubdivisionPoint FEndpoint;
	protected TFasterList FFaces;
	protected boolean FCrease;
	protected boolean FControlEdge;
	protected TFreeSubdivisionControlCurve FCurve;


	private int FGetIndex()
	{
		return 0;//                                         virtual;
	}
	private boolean FGetIsBoundaryEdge()
	{
		return false;//                                virtual;
	}
	private TFreeSubdivisionFace FGetFace(int Index)
	{
		return null;
	}
	private int FGetNumberOfFaces()
	{
		return 0;
	}
	private void FSetCrease(boolean Val)
	{
		;//                                   virtual;
	}
	private TFreeSubdivisionEdge FGetPreviousEdge()
	{
		return null;
	}
	private TFreeSubdivisionEdge FGetNextEdge()
	{
		return null;
	}

	public void AddFace(TFreeSubdivisionFace Face)
	{
		;
	}
	public void Assign(TFreeSubdivisionEdge Edge)
	{
		;//                       virtual;
	}
	public TFreeSubdivisionPoint CalculateEdgePoint()
	{
		return null;
	}
	//public void Clear;
	public TFreeSubdivisionEdge(TFreeSubdivisionSurface Owner)
	{
		super(Owner);//                   override;
	}
	public void DeleteFace(TFreeSubdivisionFace Face)
	{
		;
	}
	//public destructor  Destroy;                                                 override;
	
	public int DistanceToCursor(int X,int Y, T3DCoordinate P, TFreeViewport Viewport)
	{
		return 0;
	}
	public void Draw(boolean DrawMirror, TFreeViewport Viewport)
	{
		;
	}
	public void SwapData()
	{
		;
	}



	public boolean Crease() {
		return FCrease;
	}
	public void Crease(boolean val) {
		FSetCrease(val);
	}
	public TFreeSubdivisionControlCurve Curve()
	{
		return FCurve;
	}
	public void Curve(TFreeSubdivisionControlCurve val)
	{
		FCurve = val;
	}
	
	public int EdgeIndex()
	{
		return FGetIndex();
	}
	public TFreeSubdivisionPoint EndPoint()
	{
		return FEndpoint;
	}
	public void EndPoint(TFreeSubdivisionPoint val)
	{
		FEndpoint = val;
	}
	public TFreeSubdivisionFace Face(int index)
	{
		return FGetFace(index);
	}
	public boolean IsBoundaryEdge()
	{
		return FGetIsBoundaryEdge();
	}
	public TFreeSubdivisionEdge NextEdge()
	{
		return FGetNextEdge();
	}
	public int NumberOfFaces()
	{
		return FGetNumberOfFaces();
	}
	public TFreeSubdivisionEdge PreviousEdge()
	{
		return FGetPreviousEdge();
	}
	public TFreeSubdivisionPoint StartPoint()
	{
		return FStartpoint;
	}
	public void StartPoint(TFreeSubdivisionPoint val) {	FStartpoint = val; }
	public boolean ControlEdge()  { return FControlEdge; }
	public void ControlEdge(boolean val)  { FControlEdge=val; }
}
